//
//  UIButton+THKit.h
//  MengLiao
//
//  Created by xiuxin on 2022/7/15.
//  Copyright © 2022 BaseBusiness. All rights reserved.
//

#import <UIKit/UIKit.h>

NS_ASSUME_NONNULL_BEGIN

typedef NS_ENUM(NSInteger, JLButtonEdgeInsetsStyle) {
    JLButtonEdgeInsetsStyleTop,     // 图上，字下
    JLButtonEdgeInsetsStyleLeft,    // 图左，字右
    JLButtonEdgeInsetsStyleBottom,  // 图下，字上
    JLButtonEdgeInsetsStyleRight,   // 图右，字左
};

@interface UIButton (THKit)

/**
 支持fram布局。
 支持AutoLayout，并且要求设置button的size。
 [self.btn mas_makeConstraints:^(MASConstraintMaker *make) {
    make.center.equalTo(self.contentView);
    make.width.height.mas_equalTo(145); // 设置你想要的大小
 }];
 根据button的特性，注意button按钮宽度的最小值要求

 @param style   按钮图片文字排版方式
 @param space   图片与文字间距
 @param size    button的size，和你设置的按钮大小保持一致
 */
- (void)layoutButtonWithEdgeInsetsStyle:(JLButtonEdgeInsetsStyle)style imageTitleSpace:(CGFloat)space buttonSize:(CGSize)size;


/**
 支持AutoLayout，并且无需自己设置按钮size。
 默认是intrinsicContentSize，调整了图片和文字位置和间距后，此方法内部会自动调整button的size，size的大小是最佳包裹尺寸

 @param style 按钮图片文字排版方式
 @param space 图片与文字间距
 */
- (void)layoutButtonWithEdgeInsetsStyle:(JLButtonEdgeInsetsStyle)style imageTitleSpace:(CGFloat)space;

@end

NS_ASSUME_NONNULL_END
